import { createHttpGetFactory, createHttpPostFactory } from "@/utils/http";
 

/**
 * ApifoxModel
 */
export interface ApifoxModel {
  code: number;
  data: MenuDataType;
  message: string;
}

export interface MenuDataType {
  list: menuType[];
}

/**
 * 菜单
 */
export interface menuType {
  /**
   * 组件名称
   */
  component: string;
  /**
   * 创建时间
   */
  createTime: string;
  /**
   * 是否展示，0： 不展示，1：展示路由
   */
  hidden: number;
  /**
   * 图标
   */
  icon: string;
  /**
   * id
   */
  id: number;
  /**
   * 父级id
   */
  parentId: number;
  /**
   * 路由地址
   */
  path: string;
  /**
   * 排序，数值越小越靠前
   */
  sort: number;
  /**
   * 路由名称
   */
  title: string;
  /**
   * 路由英文名
   */
  titleEn: string;
  name: string;
  children: Array<menuType>
}

export const useMenuList = createHttpGetFactory<{}, MenuDataType>("/menu/list");

export const useUpdateUserInfo = createHttpPostFactory<
  {
    pageSize: number;
    page: number;
    keyword: string;
    userInfo: {
      name: string;
    };
  },
  MenuDataType
>("/user/register");
